perm filename N[G,BGB]2 blob sn#025312 filedate 1973-02-20 generic text, type T, neo UTF8
00100	;WORD -3.
00200	   DEFINE CW (Q,E)<CAR Q,-3(E)>↔DEFINE CW. (Q,E)<DIP Q,-3(E)>
00300	   DEFINE CCW(Q,E)<CDR Q,-3(E)>↔DEFINE CCW.(Q,E)<DAP Q,-3(E)>
00400	
00500	;WORD -2.
00600	   DEFINE DAD(Q,E)<CAR Q,-2(E)>↔DEFINE DAD.(Q,E)<DIP Q,-2(E)>
00700	   DEFINE SON(Q,E)<CDR Q,-2(E)>↔DEFINE SON.(Q,E)<DAP Q,-2(E)>
00800	
00900	;WORD -1.
01000	   DEFINE BRO(Q,E)<CAR Q,-1(E)>↔DEFINE BRO.(Q,E)<DIP Q,-1(E)>
01100	   DEFINE SIS(Q,E)<CDR Q,-1(E)>↔DEFINE SIS.(Q,E)<DAP Q,-1(E)>
01200	
01300	;WORD +0.
01400	   DEFINE TYPE  (Q,E)<CAR Q, 0(E)>
01500	   DEFINE TYPE. (Q,E)<DIP Q, 0(E)>↔DEFINE SERIA.(Q,E)<DAP Q, 0(E)>
01600	
01700	;WORD +1.
01800	   DEFINE NFACE (Q,E)<CAR Q, 1(E)>↔DEFINE PFACE (Q,E)<CDR Q, 1(E)>
01900	   DEFINE NFACE.(Q,E)<DIP Q, 1(E)>↔DEFINE PFACE.(Q,E)<DAP Q, 1(E)>
02000	
02100	;WORD +2.
02200	   DEFINE NED   (Q,E)<CAR Q, 2(E)>↔DEFINE PED   (Q,E)<CDR Q, 2(E)>
02300	   DEFINE NED.  (Q,E)<DIP Q, 2(E)>↔DEFINE PED.  (Q,E)<DAP Q, 2(E)>
02400	
02500	;WORD +3.
02600	   DEFINE NVT   (Q,E)<CAR Q, 3(E)>↔DEFINE PVT   (Q,E)<CDR Q, 3(E)>
02700	   DEFINE NVT.  (Q,E)<DIP Q, 3(E)>↔DEFINE PVT.  (Q,E)<DAP Q, 3(E)>
02800	
02900	;WORD +4.
03000	   DEFINE NCW   (Q,E)<CAR Q, 4(E)>↔DEFINE PCW   (Q,E)<CDR Q, 4(E)>
03100	   DEFINE NCW.  (Q,E)<DIP Q, 4(E)>↔DEFINE PCW.  (Q,E)<DAP Q, 4(E)>
03200	
03300	;WORD +5.
03400	   DEFINE NCCW  (Q,E)<CAR Q, 5(E)>↔DEFINE PCCW  (Q,E)<CDR Q, 5(E)>
03500	   DEFINE NCCW. (Q,E)<DIP Q, 5(E)>↔DEFINE PCCW. (Q,E)<DAP Q, 5(E)>
03600	
03700	;WORD +6.
03800	   DEFINE ALT  (Q,E)<CAR Q, 6(E)>↔DEFINE LOCOR (Q,E)<CDR Q, 6(E)>
03900	   DEFINE ALT. (Q,E)<DIP Q, 6(E)>↔DEFINE LOCOR.(Q,E)<DAP Q, 6(E)>
04000	
04100	;WORD +7.
04200		DEFINE POTEN (Q,E)<CDR Q,7(E)>
04300		DEFINE POTEN.(Q,E)<DAP Q,7(E)>
     

00100	; NAMES OF NODE DATA WORDS.
00200	
00300		↓AA ←← ↓XWC ←← -3
00400		↓BB ←← ↓YWC ←← -2
00500		↓CC ←← ↓ZWC ←← -1
00600	
00700		↓QQ ←← 3
00800		↓KK ←← 4
00900	
01000		↓XPP ←← 4↔	↓YPP ←← 5↔	↓ZPP ←← 6
01100		↓IX←←0↔ 	↓IY←←1↔ 	↓IZ←←2
01200		↓JX←←3↔ 	↓JY←←4↔ 	↓JZ←←5
01300		↓KX←←6↔ 	↓KY←←7↔ 	↓KZ←←8
01400	
     

00100	;WRETCHED HALFWORD FLOATING POINT VERTEX DISPLAY COORDINATES.
00200	
00300	   DEFINE XDC (Q,E)<HLLE Q,1(E)>↔DEFINE YDC (Q,E)<HRLE Q,1(E)>
00400	   DEFINE XDC.(Q,E)<HLLM Q,1(E)>↔DEFINE YDC.(Q,E)<HLRM Q,1(E)>
00500	
00600	; FETCH LINK FROM NODE.
00700	
00800	   DEFINE NBODY (Q,E)<CAR Q, 6(E)>↔DEFINE PBODY (Q,E)<CDR Q, 6(E)>
00900	   DEFINE NUF   (Q,E)<CAR Q,-1(E)>↔DEFINE PUF   (Q,E)<CDR Q,-1(E)>
01000	   DEFINE NCNT  (Q,E)<NIP Q, 2(E)>
01100	   DEFINE X1DC  (Q,E)<NIP Q,-3(E)>↔DEFINE Y1DC  (Q,E)<NAP Q,-3(E)>
01200	   DEFINE X2DC  (Q,E)<NIP Q,-2(E)>↔DEFINE Y2DC  (Q,E)<NAP Q,-2(E)>
01300	
01400	; STORE LINK INTO NODE.
01500	
01600	   DEFINE NBODY.(Q,E)<DIP Q, 6(E)>↔DEFINE PBODY.(Q,E)<DAP Q, 6(E)>
01700	   DEFINE NUF.  (Q,E)<DIP Q,-1(E)>↔DEFINE PUF.  (Q,E)<DAP Q,-1(E)>
01800	   DEFINE NCNT. (Q,E)<DIP Q, 2(E)>
01900	   DEFINE X1DC. (Q,E)<DIP Q, 4(E)>↔DEFINE Y1DC. (Q,E)<DAP Q, 4(E)>
02000	   DEFINE X2DC. (Q,E)<DIP Q, 5(E)>↔DEFINE Y2DC. (Q,E)<DAP Q, 5(E)>
     

00001	;TYPE BIT OPERATIONS.
00002	
00003		DEFINE MARK(Q,BITS){
00004		IFE BITS⊗-22,{LACI BITS}
00005		IFN BITS⊗-22,{SLACI(BITS)}
00006		IORM(Q)}
00007	
00008		DEFINE MARKZ(Q,BITS){
00009		IFE BITS⊗-22,{LACI BITS}
00010		IFN BITS⊗-22,{SLACI(BITS)}
00011		ANDCAM (Q)}
00012	
00013		DEFINE TEST(Q,BITS){
00014		LAC(Q)
00015		IFE BITS⊗-22,{TRNN(BITS)}
00016		IFN BITS⊗-22,{TLNN(BITS)}}
00017	
00018		DEFINE TESTZ(Q,BITS){
00019		LAC(Q)
00020		IFE BITS⊗-22,{TRNE(BITS)}
00021		IFN BITS⊗-22,{TLNE(BITS)}}
01400	
01500	; PROPERTY-TYPE BITS.
01600	
01700		↓BBIT ←← 1B17
01800		↓FBIT ←← 1B16
01900		↓EBIT ←← 1B15
02000		↓VBIT ←← 1B14
02100	
02200		↓PZZ ←← 1B9
02300		↓NZZ ←← 1B10
02400	
02500		↓FOLDED ←← 1B11
02600		↓VISIBLE ←← 1B12
02700		↓POTENT ←← 1B13
02800		↓DARKEN ←← 1B3
02900	
03000		↓NORTH ←← 1B5
03100		↓SOUTH ←← 1B6
03200		↓EAST  ←← 1B7
03300		↓WEST  ←← 1B8
03400		↓NSEW  ←← 17B8
03410	
03420		↓JUTBIT ←← 1B3
03430		↓JOTBIT ←← 1B4
03500	
03600		DEFINE HIDE(Q){
03700		SLACI(3B13)↔ANDCAM(Q)}
03800	
03900		↓TMPBIT ←← 1B2
04000		↓BDLBIT ←← 1B1	;BODY OPERATION DISABLE LOCOR ACTION.
04100		↓BDVBIT ←← 1B3	;BODY OPERATION DISABLE VERTEX ACTION.
04200		↓BDPBIT ←← 1B4	;BODY OPERATION DISABLE PARTS ACTION.